﻿// --------------------------------------------------------------------------------------------------------------------
// <copyright file="IBuildCompletionEndpoint.cs" company="Jim Liddell">
//   Copyright © Jim Liddell. All rights reserved.
// </copyright>
// --------------------------------------------------------------------------------------------------------------------

namespace TeamBuildBunny
{
    #region Usings

    using System.ServiceModel;

    #endregion

    /// <summary>
    /// Endpoint for an alert generated by the completion of a build.
    /// </summary>
    [ServiceContract(Namespace = "http://schemas.microsoft.com/TeamFoundation/2005/06/Services/Notification/03")]
    public interface IBuildCompletionEndpoint
    {
        #region Public Methods

        /// <summary>
        /// Notify the <see cref="IBuildCompletionEndpoint"/> of a <see cref="BuildCompletionEvent"/>.
        /// </summary>
        /// <param name="eventXml">
        /// Serialized XML for a <see cref="BuildCompletionEvent"/>.
        /// </param>
        /// <param name="tfsIdentityXml">
        /// Serialized XML for a <see cref="TfsIdentity"/>.
        /// </param>
        [OperationContract(Action = "http://schemas.microsoft.com/TeamFoundation/2005/06/Services/Notification/03/Notify")]
        void Notify(string eventXml, string tfsIdentityXml);

        #endregion
    }
}